package com.demo.java.OD1_50.OD47;

import java.util.HashMap;
import java.util.LinkedList;
import java.util.Map;
import java.util.Scanner;

/**
 * @author bug菌
 * @Source 公众号：猿圈奇妙屋
 * @des： 【人数最多的站点】问题
 * @url： https://blog.csdn.net/weixin_43970743/article/details/145580332
 */
public class OdMain {
    public static void main(String[] args) {
        try {
            Scanner s = new Scanner(System.in);
            int len = s.nextInt();  // 读取区间的个数
            int[][] valueInts = new int[len][2];  // 存储所有区间

            // 读取每个区间的起始和结束位置
            for (int i = 0; i < len; ++i) {
                int start = s.nextInt();
                int end = s.nextInt();
                int[] pair = {Math.min(start, end), Math.max(start, end)};  // 确保区间从小到大
                valueInts[i] = pair;
            }

            // 用哈希表记录每个站点的出现次数
            HashMap<Integer, Integer> myMap = new HashMap<>();
            for (int[] pair : valueInts) {
                // 遍历区间内的所有站点，更新它们的出现次数
                for (int i = pair[0]; i <= pair[1]; ++i) {
                    myMap.put(i, myMap.getOrDefault(i, 0) + 1);
                }
            }

            // 将哈希表的内容放入链表中，按出现次数排序
            LinkedList<Map.Entry<Integer, Integer>> linkedList = new LinkedList<>(myMap.entrySet());
            linkedList.sort((e1, e2) -> Integer.compare(e2.getValue(), e1.getValue()));

            // 输出出现次数最多的站点编号
            Integer result = linkedList.get(0).getKey();
            System.out.println(result);
        } catch (Exception e) {
            e.printStackTrace();
            System.out.println("has error");
        }
    }
}